package com.enjoyor.health.HGPT.core.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.enjoyor.health.HGPT.core.dto.ReservationNumDto;
import com.enjoyor.health.HGPT.core.dto.ScheduleInfoDto;
import com.enjoyor.health.HGPT.core.entity.ReservationInfo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author enjoyor
 * @since 2023-10-18
 */
public interface IReservationInfoService extends IService<ReservationInfo> {

    public List<ScheduleInfoDto> getReservationInfoByOpenId(String openId);

    public List<ReservationNumDto> getReservationNumBetweenDate(String startDate, String endDate);

    public List<ReservationNumDto> getReservationNumBetweenDateV2(String startDate, String endDate, List<String> packageIds);

    public List<ReservationNumDto> getReservationNumByDate(String date);

    public List<ReservationNumDto> getReservationNumByDateV2(String date, List<String> packageIds);

    public Page<Map<String, Object>> getReservationInfoWeb(LocalDate date, String pkgType,
                                                           String startDate,
                                                           String endData,
                                                           String period,
                                                           String status, int page, int size);

    public void updateReservationInfoUpdateTime(String reservationNumber);
}
